/*
 * predef.c
 *
 *  Created on: 2021年11月19日
 *      Author: 朱国印
 */

#include <stdio.h>

extern int end, etext, edata;
extern int _etext, _edata, _end;

int main()
{
	/**
	 * 以下代码在linux0.12中得到如下结果：
	 * &etext=4000, &edata=44c0, &end=48d8
	   &_etext=4000, &_edata=44c0, &_end=48d8
	 *
	 * 在Fedora 34中用32位模式编译，得到如下结果：
	 * &etext=0x8049264, &edata=0x804c018, &end=0x804c01c
	   &_etext=0x8049264, &_edata=0x804c018, &_end=0x804c01c
	 *
	 * 在Fedora 34中用64位模式编译，得到如下结果：
	 * &etext=0x4011f5, &edata=0x404024, &end=0x404028
	   &_etext=0x4011f5, &_edata=0x404024, &_end=0x404028
	 *
	 */
	printf("&etext=%p, &edata=%p, &end=%p\n",
			&etext, &edata, &end);
	printf("&_etext=%p, &_edata=%p, &_end=%p\n",
			&_etext, &_edata, &_end);
	return 0;
}
